Applications have typically been developed for implementation by a single device. In conjunction with the capture, processing and viewing of medical images, for example, a first application may be developed for a desktop computer to provide a radiology information system (RIS), a second application may be developed for a tablet computer to implement a picture archiving and communication system (PACS) viewer and a third application may be developed for a smart phone to implement an absolute coordinate poller. While the focus upon developing an application for a single device facilitates the development of the application and provides many different application development possibilities, the functionality provided by the application may be at least somewhat limited by the device for which the application was developed and the functionality of the device may be correspondingly somewhat limited by the applications that are developed therefore.
Users oftentimes have multiple devices, such as a smartphone, a tablet computer, a laptop computer, a desktop computer, an electronic reader (e-reader) and the like. Additionally, many of these devices are mobile and, as such, may be utilized in a variety of different situations. Further, at least some of the devices may include one or more sensors with devices developed for future use being expected to include even a greater number and variety of sensors for providing data and context to the applications executed by the respective devices. By leveraging the information provided by the various sensors as well as the applications executed by the various devices, a user might take advantage of enhanced functionality and an improved user experience. Returning to the foregoing example, interaction between the desktop computer executing the first application to provide a RIS, the tablet computer executing the second application to implement a PACS viewer and the smart phone executing the third application to implement an absolute coordinate poller may provide an integrated RIS-PACS that is capable of determining the relative position of the user holding the smartphone with the absolute coordinate poller, thereby providing enriched and increased functionality. However, in order to share sensor data collected by sensors of the various devices and to allow the applications executed by the various devices to interact, improved techniques for sharing data between the devices must be developed.
However, the techniques for sharing data between devices and between applications executed by the various devices have previously been limited for various reasons including as a result of their implementation for specific purposes or functions and/or their development for a particular device. Additionally, techniques for sharing data between devices have sometimes required that the data be specified in advance, thereby making the techniques for sharing data more rigid and less extensible than desired in many instances. Further, techniques for sharing data between multiple devices as well as between applications executed by multiple devices have had difficulties, in some instances, identifying the addition of new devices and the departure of other devices, thereby limiting the adaptability and versatility of such techniques.